Packer-Kurs 2/2

von
Andreas Schlick

Dieser Kurs widmet sich in zwei Teilen den Packern/Archivern. Im ersten Teil habe ich die meistverbreitetsten Packer vorgestellt und einen Geschwindigkeitsvergleich gemacht.

Im zweiten Teil beschreibe ich die Bedienung der meistbenutzten Packer. Ich will und kann hier keine vollständige Beschreibung aller möglichen Optionen und Funktionen geben, die die einzelnen Packer bieten, sondern nur eine Übersicht, wie man die wichtigsten Sachen macht. Für eine genaue Erklärung schauen Sie sich bitte die entsprechende Anleitung an.


LZX LhA GZip tar UnTGZ UnARJ UnRAR Übersicht

LZX 1.21r

Endung eines LZX-Archivs: .lzx Aufruf-Maske: LZX [-<Optionen>] <Kommandos> <Archive> [<Datei>...] [<Zielver>] I. Packen/Archivieren Das wichtigste Kommando für das Archivieren ist 'a'. Der einfachste Aufruf, um ein File in ein Archiv zu "adden" (hinzufügen), lautet daher: LZX a Archive.LZX DateiA Damit wird die Datei "DateiA" zu dem Archiv "Archive.LZX" hinzugefügt (falls das Archiv noch nicht existiert, wird es erstellt). Es können aber auch mehrere Dateien gleich mitübergeben werden: LZX a Archive.LZX DateiB DateiC Ram:DateiD Work:DateiE Mit diesem Aufruf würden die Dateien "DateiB", "DateiC", "Ram:DateiD" und "Work:DateiE" dem Archive hinzugefügt werden. Dabei ist zu beachten, daß die Pfadangabe der Dateien DateiD bzw. DateiE *nicht* mit abgespeichert wird! Um dies zu erreichen, muß eine spezielle Option angegeben werden (siehe unten). [für Fortgeschrittene!] Als Abwandlung des 'a'-Kommandos gibt es das 'af'-Kommando (add fast). Es wird einfach anstelle von 'a' verwendet. Der Unterschied ist, daß LZX nicht überprüft, ob die hinzuzufügende Datei schon existiert, dadurch wird der Vorgang erheblich schneller. Allerdings sollte diese Option nur verwendet werden, wenn man sichergehen kann, daß kein File zweimal "geadded" wird. Als Beispielanwendung wird in der Anleitung eine FidoNet-Anwendung erwähnt, bei der jedes Mailpaket ein anderen Namen besitzt. Durch die Verwendung von 'af' kann dieser Bereich einer BBS erheblich beschleunigt werden. Die Kommandos 'f' ("freshen"), 'r' ("replace") und 'u' ("update") dienen auch dem Hinzufügen von Dateien zu einem Archiv. Bei 'f' werden ältere Dateien durch neuere ersetzt, wobei das letzte Änderungs-Datum der Dateien beachtet wird. Es wird dabei angenommen, daß ein früheres Datum die ältere Datei angibt. Kommando 'r' ersetzt hingegen einfach nur bereits existierende Files. 'u' wirkt fast genauso wie 'f', jedoch fügt es auch neue Datei hinzu (im Gegensatz zu 'f' und 'r'). II. Entpacken Ein Archiv wird entweder mit dem Kommando 'e' oder mit 'x' entpackt. Der einzige Unterschied ist, daß bei 'e' keine Dateipfade beachtet werden, bei 'x' hingegen werden die Pfade (soweit vorhanden) beachtet und ggfs. Unterverzeichnisse angelegt. Wird das Zielverzeichnis beim Aufruf von LZX nicht angegeben, wird das aktuelle Verzeichnis benutzt. III. Weitere Kommandos Auflisten des Inhalts eines Archivs kann über die zwei Kommandos 'l' und 'v' geschehen. Der Unterschied ist, daß 'v' mehr Informationen anzeigt als 'l'. Die meisten ausgegebenen Informationen sollte verständlich sein. Die "CRC-32"- Spalte gibt die Checksumme der einzelnen Files aus (im Gegensatz zu LhA`s 16Bit-CRC verwendet LZX eine 32Bit-CRC-Checksumme, was die Sicherheit erhöht). Die "m"-Spalte gibt den Modus der Kompression von LZX an. Um sich eine Datei aus einem Archiv heraus anzeigen zu lassen, muß man LZX mit 'p' aufrufen. Damit läßt sich z.B. ein schneller Blick in eine Readme-Datei werfen, ohne sie extra entpacken zu müssen. Wenn man zwei Archive zusammenpacken möchte, kann man das 'c' ("concatenate") Kommando verwenden. Jedoch ist dabei genau wie mit 'af' Vorsicht walten zu lassen, da LZX keine Überprüfung vornimmmt, ob die Dateien vielleicht schon vorhanden sind. Falls man testen möchte, ob das Archiv korrekt übertragen wurde, kann man mit dem Kommando 't' einen Test der Archives durchführen. Es lassen sich zu guter letzt auch einzelne Dateien aus einem Archiv löschen. Der entsprechnde Aufruf könnte z.B. so aussehen: LZX d Archiv.LZX DateiB DateiC Damit würden die Dateien "DateiB" und "DateiC" aus dem Archiv "Archiv.LZX" gelöscht werden. IV. wichtige Optionen Nun noch eine Beschreibung der wichtigsten Optionen. Für eine vollständige Übersicht schauen Sie bitte in der Anleitung nach. Option Beschreibung -e Archiviert auch leere Unterverzeichnisse. -F Mit dieser Option gibt LZX kein Linefeed mehr nach jeder (de-)komprimierten Datei aus. Das ist extrem nützlich, da je nach Rechner und Archiv das Scrolling der Console den Pack- bzw. Entpackvorgang erheblich verlangsamt. -Qf Mit dieser Option packt LZX schneller (ohne Effizienzverlust), benötigt aber 32KB mehr Speicher. -r Mit dieser Option durchsucht LZX bei Verwendung von Jokern auch Unterverzeichnisse, um passende Dateien zu finden. Durch -r wird normalerweise auch automatisch -x aktiviert. -w Hiermit kann ein spezielles Verzeichnis angegeben werden, indem LZX seine temporären Dateien anlegt. Dadurch lassen sich auch bei geringem Speicher größere Dateien packen. Der Pfad muß auf einem Semikolon oder Slash enden. Default ist T: -x Mit dieser Option speichert LZX auch die Pfadnamen der einzelnen Dateien (außer die Device-Namen). Dadurch wird die Verzeichnisstruktur erhalten. Diese Option wird von -r automatisch aktiviert. -Y Normalerweise werden Dateien mit bestimmten Endungen nicht gepackt, da diese bereits in komprimierter Form vorliegen (z.B. .lha .rar etc.) Mit der -Y Option werden auch diese von LZX erneut gepackt. -0 Hiermit wird der Modus von LZX eingestellt. -0 bedeutet keine Komprimierung. -1 etwas schlechtere Komprimierung als -2. -2 Default-Einstellung -3 bessere Komprimierung als -2 -9 bestmögliche Komprimierung von LZX, jedoch extram langsam

LhA

Aufruf-Maske: LhA [-<Optionen>] <Kommandos> <Archiv[.LHA]> [[homedir] <Dateispec>...] [destdir] Der Klassiker unter den Packer. LhA hat fast die gleichen Kommandos und Optionen wie LZX (oder genauer: LZX hat die von LhA, da LZX nach LhA programmiert wurde). Die Bedienung ist im großen und ganzen die gleiche wie bei LZX, jedoch unterstützt LhA (unregistriert) einige Optionen nicht bzw. sie haben eine andere Bedeutung. Endung eines LhA Archives: .lha I. Packen Die Option zum Packen entspricht der von LZX, der Aufruf ist daher: LhA a <Archiv> <File1> <File2..> Ebenfalls lassen sich mit 'c' zwei Archive zusammenfassen, wobei genau wie bei LZX nicht überprüft wird, ob die Dateien schon im Archiv vorhanden sind. Es lassen sich Dateien auch in ein Archiv verschieben, so daß die original Datei gelöscht wird (Kommando: 'm'). II. Entpacken Die Kommandos zum Entpacken 'a' bzw. 'e' entsprechen genau LZX. III. weitere Kommandos Das Auflisten geschieht mit 'l' bzw. 'v'. Das Testen des Archivs macht 't' und eine Datei wird aus dem Archiv mit 'd' gelöscht.

GZip

GZip ist eigentlich nur ein Packer und bietet nur eine umständliche Möglichkeit Dateien zu einem Archiv zusammenzupacken. Er wird meist zusammen mit tar, einem reinem Archiver, verwendet. tar bietet eine Unterstützung von GZip, so daß zwei getrennte Aufrufe auch vermieden werden. Endung einer GZip gepackten Datei: .gz Endung einer tar/GZip Archives: .tgz oder .tar.gz Aufruf-Maske von GZip: gzip [-cdfhlLnNrtvV19] [-S Suffix] <Datei ...> I. Packen Normalerweise packt GZip einfach die übergebenen Dateien, hängt die Endung .gz daran und löscht das Original. Bei dieser Verwendung muß keine weitere Option angegeben werden. Durch Angabe einer Zahl zwischen 1 und 9 als Option wird die Komprimierungsqualität beeinflusst. "-1" ist schnell, aber wenig effizient, während "-9" die beste Effiziens gibt, aber langsamer ist. Um für jede Datei eine Ausgabezeile mit der Packratio und dem neuem Dateinamen zu bekommen, muß "v" als Option angegeben werden. Die Option "r" sorgt für die bekannte Rekursion. Damit die ursprüngliche Datei unberührt bleibt, kann die Option "c" angegeben werden. Dann wird die Ausgabe nach stdout angeleitet. Um das dann nützlich zu verwenden kann sie wieder auf gewohne AmigaDOS-weise umgeleitet werden. Beispiel: gzip -c TestDatei >RAM:Datei.gz Damit wird die Datei "TestDatei" gepackt und als Datei "Ram:Datei.gz" abgespeichert. II. Entpacken GZip entpackt ein gepacktes File mit "-d" und stellt den ursprünglichen Dateinamen wieder her und löscht dann das gepackte File. Ansonsten läßt sich ebenfalls die Ausgabe mit "-c" umleiten. III. Sonstige Optionen Als weitere Optionen kann man mit "-l" bzw. "-lv" einige Informationen über eine gepackte Datei abrufen. Mit "-h" erhält man einen kurzen Hilfstext. Die Option "-t" testet das Archiv. Um eine Ausgabe pro geprüfte Datei zu erhalten, muß wieder die Verbose-Option eingeschaltet sein.

tar

"tar" ist ein GNU-Programm, das zum Archivieren von Dateien auf "Tapes" entwickelt wurde (daher der Name "Tape ARchiver"). Jedoch lassen sich die Archive auch auf jedes andere Gerät umlenken. Als typisches Un*x-like Programm ist die Bedienung etwas gewöhnungsbedürftig und m.E. nicht so komfortabel, wie bei den anderen Amiga Tools. Das zeigt sich z.B. daran, daß zwischen zwei verschiedene Optionen unterschieden wird, je nach dem, ob man ein neues Archiv anlegen will oder einem bereits bestehenden Dateien hinzufügen will. Die Kommandos von tar beginnen mit einem "--" (ohne die Anführungsstriche) und sind meist ganze Worte, jedoch gibt es für die wichtigsten Kommandos eine verkürzte Schreibweise, die mit einem "-" beginnt und nur aus einem Buchstaben besteht. Eine Übersicht der Befehle wird mit dem Aufruf "tar --help" angezeigt und zeigt auch beide Varianten an. Ich werde daher nicht immer beide Varianten angeben. Da tar ein recht komplexes Programm ist, empfehle ich bei häufiger Benutzung auf jeden Fall die Anleitung zu lesen. Wer lediglich tar benötigt, um .tgz Files zu entpacken, sollte dagegen lieber UnTGZ von Oliver Wagner benutzen (siehe unten). Empfohlen wird die Portierung aus dem "GeekGadget"-Projekt. Ich habe nämlich noch eine andere Portierung, die allerdings die Pfade nur im Un*x-Stil akzeptiert, was sicherlich unnötig gewöhnungsbedürftig ist. Endung eines tar Archivs: .tar Endung einer tar/GZip Archives: .tgz oder .tar.gz I. Archivieren Der Aufruf, um ein neues tar-Archiv anzulegen, lautet: tar --create --file <Archiv> <File1> <File2...> Oder mit den abgekürzten Optionen: tar -cf <Archiv> <File1> <File2..> Damit werden die Dateien File1, File2.. zusammen in das Archiv gepackt, ohne dabei gepackt zu werden. Allerdings unterstützt tar auch "compress" und "GZip" direkt. Soll das Archiv mit GZip gepackt werden, muß die Option -z mit angegeben werden (sowohl beim Packen also auch beim Entpacken). tar -czf <Archiv> <File1> <File2..> Fall das Archiv bereits existiert und nur die Files hinzugefügt werden sollen, darf die --create (-c) Option nicht angegeben werden, da sonst das Archiv überschrieben wird. In diesem Fall ist die --append bzw. -r Option zu verwenden. tar -rf <Archiv> <File1> <File2..> Dabei ist jedoch zu beachten, daß tar nicht checkt, ob die Dateien bereits im Archiv sind und sie einfach als letzte Dateien hinzufügt. Um bereits bestehende Dateien upzudaten, gibt es die Option "--update" ('-u'). II. Entpacken Um nun das Archiv wieder zu entpacken, gibt es folgenden Aufruf: tar -xf <Archiv> <File1> <File2..> Die 'x' Option ist die Kurzfassung von '--extract', womit die angegebenen Dateien entsprechend ihres Pfades entpackt werden. III. Weitere Optionen Soll tar anzeigen, welche Dateien bearbeitet werden, ist die Option --verbose ('-v') mitanzugeben. Z.B.: tar -cvzf <Archiv> <File1> <File2..>

UnTGZ 1.5

"UnTGZ" von Oliver Wagner (zu finden unter ftp.vapor.com) entpackt Dateien, die mit tar und GZip zu einem Archiv zusammengepackt sind. Als reines Entpacktool ist es einfacher zu bedienen als tar. Die tar/GZip-Archive enden auf .tgz oder .tar.gz Der Aufruf von UnTGZ ist denkbar einfach: UnTGZ <Archiv> <Zielverzeichnis> Zum Anzeigen des Inhaltes besitzt UnTGZ noch die Option -v. UnTGZ -v <Archiv>

Unarj

Unarj ist ein Entpacker für den arj-Packer des PC`s. Die Bedienung ist relativ einfach. Es gibt mehrere Portierungen von Unarj für den Amiga. Die Bedienung ist jedoch gleich. UNARJ <Archiv> Damit wird der Inhalt des arj-Archives angezeigt. UNARJ e <Archiv> Damit wird das Archiv in das aktuelle Verzeichnis hinein entpackt. UNARJ x <Archiv> Damit wird das Archiv entpackt und die Pfade der Dateien bleiben erhalten. UNARJ t <Archiv> Damit wird das Archiv getestet.

Unrar

Unrar ist ein Entpacker für den PC-Packer rar. Hinweis: Die Version 2.01 von Amiga-Unrar hat einen Bug, es sollte daher auf jeden Fall Version 2.02 verwendet werden! Unrar x <Archiv> <Pfad_des_Zielverzeichnis> Zum Auspacken des Archivss. Unrar l <Archiv> Listet den Inhalt des Archivs. Unrar t <Archiv> Checkt den Inhalt des Archivs.


Übersicht:
PackerPackenEntpackenAuflisten
LhAa x oder el oder t
LZXa x oder el oder t
tar-c oder -r-x -t
GZip d -l oder -lv
UnTGZk.A. -v
UnARJk.A. x oder e
UnRARk.A. x l
Zurück zum Anfang


Prev Inhaltsverzeichnis Next
©`98 Der AmZeiger